home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Night Owl 6
/
Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso
/
049a
/
copymail.zip
/
COPYMAIL.DOC
< prev
next >
Wrap
Text File
|
1991-01-22
|
8KB
|
162 lines
CopyMail Version 0.9 (Beta) -- Copyright 1990 by W. F. Muldrow
This program is an original work by W. F. Muldrow (8:928/1@RBBSNet or
1:3617/1@FidoNet). Permission is granted to freely distribute unmodified
copies of this program together with its documentation and sample
configuration files so long as no fee is charged for such distribution.
Permission is also granted to use the original program or a modified version
of this program and to incorporate any or all of this program into other
applications so long as no fee is charged for any derivative work.
COPYMAIL is intended for use in multitasking or multi-node unattended
mailer applications. It provides the capability of moving outbound mail
packets and bundles which were created in an off-line directory to the
on-line outbound area in a controlled and safe manner. Multiple nodes are
supported. Multiple off-line outbound areas are supported in order to
facilitate multi-zone applications.
Copymail uses the Binkley-Term version 2.40 convention of looking for and
creating a flag file (xxxxyyyy.BSY) in the outbound directory to indicate when
it is unsafe to alter outbound files for a node. To enable this feature in
Binkley-Term, the TaskNumber and Flags configuration verbs should be enabled.
Copymail will also create TASK.xx task flags in Binkley's Flags directory to
help in coordinating multitasking operations.
There are several goals to meet in order to efficiently move mail in
a multitasking and/or multinode environment:
1. All mailer nodes should be online and ready to answer inbound
calls a maximum amount of time.
2. All mailer nodes should be able to share common outbound areas
so that callers may receive all available mail by calling any available node.
3. The mailer must not transmit files which are in use by a mail
processor and the mail processor must not compress packets or update bundles
that the mailer is attempting to send.
CopyMail to the rescue! All of these goals can be satisfied using
CopyMail together with Binkley-Term 2.40 or later. It is expected that a
future release of Opus will also allow the same processing method to work.
Here's how it's done:
1. All mailer nodes are configured to use the same outbound
directories and unique (not shared) inbound files directories.
2. The mail processor is configured to use a different set of
inbound and outbound directories that are not shared with the mailer(s).
3. When mail is received by the mailer, it is copied from that
node's inbound files area to the mailer's inbound file area.
4. If the mail processor is not already active, it is started.
When running under a multitasking environment such as Desqview or Windows,
this involves opening an additional window to allow background processing
of the mail. In a network environment it may involve a mailer node remaining
off line in order to process mail, but even so, only one node need be off
line to process all of the mail that has been received on any node.
5. When the mail processor is finished and new outbound mail has
been packed up for the mailer to send, the mail processor's batch file
invokes CopyMail. CopyMail will happily and safely move the new outbound
mail into the mailer's outbound directory(ies).
6. After CopyMail has done it's thing, the mail processor's batch
file should check to see if more unprocessed mail has been received. If
so, return to step 4 and process more mail. Otherwise, if in a window, the
window can be closed; or if in a network, the node can go back on line.
When copying or combining outbound mail files, an existing outbound
file of CRASH flavor will result in a CRASH outbound file. Otherwise, any
existing outbound file for the same node address will be converted to the
flavor of the input file. Outbound compressed mail files will be created
using the current day of the week in the file extension. Old outbound mail
bundles which have been truncated to zero length will be deleted.
This archive contains the following files:
COPYMAIL.DOC -- This file.
COPYMAIL.EXE -- Executable program for 8088, 8086, 80186.
COPYMAIL.286 -- Executable program for 80286, 80386.
COPYMAIL.CFG -- Sample configuration file.
To run CopyMail, first edit the sample configuration file. The default
configuration file name is COPYMAIL.CFG. CopyMail expects to find this file
in the current directory when it is executed. When running CopyMail, the
following command line should be used:
COPYMAIL [flags] [config-file-name]
The optional flags on the line above may be any of:
/W -- To override the config file specification and operate in WAIT
mode.
/N -- To operate in NOWAIT mode.
/S -- To open files in DOS's "deny none" file sharing mode.
/C -- To open files in DOS's "compatibility" mode. If using
COMPATIBLE mode in the config file, it may also be
necessary to use this command line flag if you also
specify a config file name on the command line.
/O -- To force the NoOut mode (don't move *.OUT files).
/Tnn -- To override the config file Task number. nn is a decimal
number between 0 and 255.
The optional config-file-name may provide a complete pathname to be used
for the CopyMail configuration file. This will override the default name of
COPYMAIL.CFG.
All command line and configuration file options may be provided in either
upper or lower case. Pathnames may use either forward or backward slashes to
divide directory names. Flags may be preceded by either a forward slash or a
hyphen, and may appear either before or after the configuration file name.
Below, are listed some sample batch file segments which illustrate how
to use CopyMail in a Desqview environment. DVCOMAND is used to open an
additional Desqview window to process inbound mail.
Binkley.Bat: (mail tossing segment for node 1)
:Toss
Remark -- If no mail was received, go back online
if not exist c:\Bink\Node1\*.* Goto Start
Remark -- Now copy all of the new stuff to the mail processor
copy c:\Bink\Node1\*.* c:\Mail\Files
del c:\Bink\Node1\*.*
Remark -- Set a flag to show that new mail has arrived
echo . >c:\Mail\FlagFile.New
Remark -- If the mail processor is already running, we're done
if exist c:\Mail\FlagFile.Bsy Goto Start
Remark -- Otherwise, set the "Active" flag and start the processor
echo . >c:\Mail\FlagFile.Bsy
dvcomand open c:\dv\mt-pif.dvp
goto Start
The file MT-PIF.DVP used above is the Desqview program information file that
is used to start the mail batch file shown below.
Mail.Bat
:Start
c:
cd \Mail
Remark -- Kill the "New Mail" flag
del c:\Mail\FlagFile.New
Remark -- Use QMail to process all of the new mail.
QM Toss Scan Pack
Remark -- Use CopyMail to give the mail to the mailer's outbound
CopyMail
Remark -- Check to see if more mail came in during processing
if exist c:\Mail\FlagFile.New Goto Start
Remark -- Kill the "Active" flag and close the window
del c:\Mail\FlagFile.Bsy
exit
Similar use of the "Active" flag can be used to be sure that no mail
is being processed when doing message area maintenance and scanning. With
only a little work, all routine chores can be handled in the background
leaving nodes on line nearly all of the time. Using these methods, I have
managed to reduce my offline time to less than 4 percent of the day.